package com.zygh.coordinatestore.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.postgis.Point;
import org.postgis.Polygon;

import java.util.List;
import java.util.Map;

/**
 * @author lee
 */
@Mapper
public interface StaffMarkMapper {
    /**
     * 警员足迹
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @param staffCode 警号
     * @param gpsid gpsid
     * @return List<Map>
     */

    List<Map> getFoot(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("staffCode") String staffCode,@Param("gpsid") String gpsid );

    /**
     * 警员足迹多变形状
     * @param polygon 多边形
     * @param morning 今天早上凌晨 00:00:00
     * @param night 今天晚上凌晨  23:59:59
     * @return List<PoliceGps>
     */

    List<Map<String,Object>> getPolygon(@Param("polygon") Polygon polygon, @Param("morning") String morning, @Param("night") String night);

    /**
     * 圆形圈选功能
     * @param point 中心点
     * @param radius 半径
     * @param morning 今天早上凌晨 00:00:00
     * @param night 今天晚上凌晨  23:59:59
     * @return List<PoliceGps>
     */

    List<Map<String,Object>> getCircle(@Param("gps")Point point, @Param("radius")Double radius, @Param("morning") String morning, @Param("night") String night);

    /**
     *警员热力图
     * @param areaId 区域id
     * @param sectionId 部门id
     * @param station 岗位
     * @return  List<Map>
    */
    List<Map> getHot(@Param("areaId") Integer areaId, @Param("sectionId") String sectionId, @Param("station") String station );

}
